package edu.usmp.p2.model.repository;

import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.Query;


import edu.usmp.p2.disfraz.model.Vestuario;
public class VestuarioRepository implements Entity<Vestuario> {

	private EntityManager em;
	
	public VestuarioRepository(EntityManager em) {
		super();
		this.em = em;
	}

	
	public Vestuario insert(Vestuario t) {
		em.persist(t);

		return t;
		
	}

	
	public void update(Vestuario t) {
		em.merge(t);
		
	}

	
	public void delete(Vestuario t) {
		// TODO Auto-generated method stub
		
	}

	
	public Vestuario findById(String id) {
		// // TODO Auto-generated method stub
		return em.find(Vestuario.class, Integer.parseInt(id));
		
	}
	public Vestuario findById1(int id) {
		// // TODO Auto-generated method stub
		return em.find(Vestuario.class, (id));
		
	}
	
	public Vestuario findById(Vestuario t) {
		// TODO Auto-generated method stub
		return null;
	}
	
	public List<Vestuario> findByName(String valor) {
		System.out.println("+++++++++++++++++++++++ Buscar Nombre +++++++++++++++++++++++++++");
		Query query=em.createQuery("Select o From Vestuario o where o.nombre ='"+ valor +"'");
		List<Vestuario> lista=query.getResultList();
		return lista;
	}
	
	
	public List<Vestuario> listAll() {
		// TODO Auto-generated method stub
		Query query=em.createQuery("Select o From Vestuario o");
		List<Vestuario> vestuarios=query.getResultList();
		return vestuarios;
	}
	public List<Vestuario> listAll1(String x) {
		// TODO Auto-generated method stub
		Query query=em.createQuery("Select o From Vestuario o where o.codModelo ="+x);
		List<Vestuario> vestuarios=query.getResultList();
		return vestuarios;
	}

	
	public List<Vestuario> listByCustomCriteria(Object... objects) {
		// TODO Auto-generated method stub
		Query query=em.createQuery("Select o From Vestuario o WHERE o. username = :modelo");
		query.setParameter("modelo", objects);
		List<Vestuario> vestuarios=query.getResultList();
		return vestuarios;
	}

}
